package com.medusa.aps.business.modules.security.mp.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.medusa.aps.business.model.pagination.Page;
import com.medusa.aps.business.modules.security.model.input.MenuQueryPara;
import com.medusa.aps.business.modules.security.mp.entity.Menu;

import java.util.List;
import java.util.Set;

/**
 * @author: xianhui.yu
 **/
public interface IMenuService extends IService<Menu> {

    /**
     * 系统管理-菜单表 列表分页
     *
     * @param page
     * @param filter
     * @return
     */
    void listPage(Page<Menu> page, MenuQueryPara filter);

    /**
     * 分页查询菜单
     *
     * @param menuQueryPara 菜单查询参数
     * @return 菜单分页列表
     */
    Page<Menu> pageMenu(MenuQueryPara menuQueryPara);

    /**
     * 获取菜单树
     */
    List<Menu> treeMenu();


    /**
     * 获取菜单名称
     *
     * @param menuIds 菜单id集合
     * @return 菜单名称集合
     */
    Set<String> menuNames(Set<Long> menuIds);

}
